package com.dhcc.bpm.modules.api.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import org.springblade.core.mp.base.Excel;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springblade.core.mp.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @ClassName Backservice
 * @Description 后端服务表实体类
 * @Author daina
 * @Date 2020/2/25 15:22
 * @Version V1.0
 * @Copyright: 2020 东华软件 . All rights reserved.
 */
@Data
@TableName("opc_backservice")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "Backservice对象", description = "后端服务表")
public class Backservice extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 名称
	 * 名称
	 */
	@ApiModelProperty(value = "名称")
	@Excel(name = "名称")
	private String backserviceName;
	/**
	 * 英文名称
	 */
	@ApiModelProperty(value = "英文名称")
	@Excel(name = "英文名称")
	private String backserviceEname;
	/**
	 * 编号
	 */
	@ApiModelProperty(value = "编号")
	@Excel(name = "编号")
	private String backserviceCode;
	/**
	 * 服务类型 (SpringCloud,dubbo,Soap等)
	 */
	@ApiModelProperty(value = "服务类型 (SpringCloud,dubbo,Soap等)")
	@Excel(name = "服务类型")
	private String backserviceType;
	/**
	 * 服务访问协议 (http等)
	 */
	@ApiModelProperty(value = "服务访问协议 (http等)")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "服务访问协议")
	private Long accessProtocol;
	/**
	 * 安全认证类型
	 */
	@ApiModelProperty(value = "安全认证类型")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "安全认证类型")
	private Long safeType;
	/**
	 * 注册中心服务名
	 */
	@ApiModelProperty(value = "注册中心服务名")
	@Excel(name = "注册中心服务名")
	private String applicationName;
	/**
	 * 描述
	 */
	@ApiModelProperty(value = "描述")
	@Excel(name = "描述")
	//@TableField(value = "`describe`")
	private String describe;

	/**
	 * 调用类型
	 */
	@ApiModelProperty(value = "调用类型")
	@Excel(name = "调用类型")
	private String applyType;

	@ApiModelProperty(value = "基础产品id")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "基础产品id")
	private Long baseProductId;
	/**
	 * 是否为权限中心
	 */
	@ApiModelProperty(value = "是否为权限中心")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "是否为权限中心")
	private Integer isAuth;
	/**
	 * 是否为权限中心
	 */
	@ApiModelProperty(value = "报文编码")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "报文编码")
	private Integer msgCode;
	/**
	 * 后端服务统一路径
	 */
	@ApiModelProperty(value = "后端服务统一路径")
	@JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
	@Excel(name = "后端服务统一路径")
	private String servicePath;

	/**
	 * 导出数据标识
	 */
	@ApiModelProperty(value = "导出数据标识")
	@JsonSerialize(using = ToStringSerializer.class,nullsUsing = NullSerializer.class)
	private String expSeq;

	/**
	 * 是否开启任务调度
	 */
	@ApiModelProperty(value = "是否开启任务调度")
	@JsonSerialize(using = ToStringSerializer.class,nullsUsing = NullSerializer.class)
	private String isTask;
	/**
	 * 任务配置
	 */
	@ApiModelProperty(value = "任务配置")
	@JsonSerialize(using = ToStringSerializer.class,nullsUsing = NullSerializer.class)
	private String taskId;
}
